package com.inspur.dgov.bsp.system.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 系统配置信息
 *
 * @author chiyupei
 * @version 1.0
 * @since 1.0
 */
@Data
@TableName("sys_config")
@ApiModel(value="SysConfig对象", description="系统配置信息")
public class SysConfig implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键ID")
    @TableId("ID")
    private Long id;

    @ApiModelProperty(value = "配置项KEY")
    @TableField("CONFIG_KEY")
    private String configKey;

    @ApiModelProperty(value = "配置项值")
    @TableField("CONFIG_VALUE")
    private String configValue;

    @ApiModelProperty(value = "配置项名称")
    @TableField("CONFIG_NAME")
    private String configName;

    @ApiModelProperty(value = "配置项类型(0:类型 1:项)")
    @TableField("CONFIG_TYPE")
    private String configType;

    @ApiModelProperty(value = "配置项业务分类(0:应用运行配置 1:应用业务配置)")
    @TableField("CONFIG_KIND")
    private String configKind;

    @ApiModelProperty(value = "上级配置项ID")
    @TableField("PARENT_ID")
    private Long parentId;

    @ApiModelProperty(value = "状态(1:有效 0:无效)")
    @TableField("STATUS")
    private String status;

    @ApiModelProperty(value = "排序")
    @TableField("SORT_ORDER")
    private Integer sortOrder;

    @ApiModelProperty(value = "子节点数")
    @TableField("CHILDS")
    private Integer childs;

    @ApiModelProperty(value = "说明")
    @TableField("REMARK")
    private String remark;

    @ApiModelProperty(value = "创建者ID")
    @TableField("CREATOR")
    private Long creator;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATE_TIME")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "更新者ID")
    @TableField("UPDATOR")
    private Long updator;

    @ApiModelProperty(value = "更新时间")
    @TableField("UPDATE_TIME")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;


}
